package com.itheima.pojo;


import com.fasterxml.jackson.annotation.JsonIgnore;
import jakarta.validation.constraints.Email;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Pattern;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.stereotype.Component;

import java.time.LocalDateTime;

@Component
@Data
@NoArgsConstructor
@AllArgsConstructor
public class User {

    @NotNull /* 主键不能为空 */
    private Integer id;//主键ID
    private String username;//用户名、

    @JsonIgnore  /* 将user中的密码属性忽略即隐藏 */
    private String password;//密码

    @NotEmpty  /* 昵称不能为空并且长度规定在1~10内 */
    @Pattern(regexp = "^\\S{1,10}$")
    private String nickname;//昵称

    @NotEmpty
    @Email   /* 邮箱不能为空并且格式也得符合邮箱号标准 */
    private String email;//邮箱

    private String userPic;//用户头像地址
    private LocalDateTime createTime;//创建时间
    private LocalDateTime updateTime;//更新时间
}
